![]() Verfahren und Systeme zum Erzeugen von Unterstützungsdateien für Befehle
专利摘要:
Es wird ein Verfahren zum Erzeugen von Unterstützungsdokumenten für einen Befehlscode in einer befehlszeilenorientierten Betriebsumgebung offenbart. Das Verfahren umfaßt ein Erstellen einer XML-Quellendatei, wobei die XML-Quellendatei Informationen umfaßt, die für das Erzeugen eines Parsercodes erforderlich sind. Der Parsercode ermöglicht ein Kompilieren des Befehlscodes. Das Verfahren umfaßt ferner ein Erzeugen von zumindest zwei einer Manual-Seite-Datei, einer Gebrauchsnachrichtendatei und des Parsercodes aus der XML-Quellendatei. 公开号:DE102004009676A1 申请号:DE200410009676 申请日:2004-02-27 公开日:2004-12-16 发明作者:Robert D. Loveland Quist;Lawrence R. Fort Collins Rowland 申请人:Hewlett Packard Development Co LP; IPC主号:G06F17-21
专利说明:
[0001] Aufgrundder weit verbreiteten Verwendung von Computern und zugeordnetenTechnologien besteht ein ständigerBedarf, die Programme, die auf verschiedenen Computersystemen ablaufen,zu aktualisieren. HäufigeAktualisierungen sind notwendig, um z. B. Kompatibilität, zusätzlicheFunktionalität und/oderProgrammfehlerbehebungen bereitzustellen. Mit jeder Aktualisierungliegen in der Regel Instruktionen an den Benutzer vor, die die neuenMerkmale und/oder Programmfehlerbehebungen für das aktualisierte Programmberücksichtigen. [0002] Ineiner befehlszeilenorientierten Betriebsumgebung (z. B. UNIX, LINUXund DOS), z. B., kann eine Software-Hochrüstung (upgrade) neue Befehlssätze, neueOptionen bezüglichexistierender Befehle, die Streichung vorangegangener Befehle unddergleichen umfassen. Um den Benutzer bei der Nutzung der aktualisiertenSoftware zu unterstützen, können Hundertevon Manual-Seiten (Man-Pages) bereitgestellt sein. Eine Man-Pagekann z. B. eine Beschreibung eines Befehls, die Syntax des Verwendensdes Befehls und verschiedene dem Befehl zugeordnete Optionen bereitstellen.Dementsprechend ist die Genauigkeit der Man-Pages entscheidend für die Fähigkeiteines Benutzers, die Befehlssätzezu beeinflussen und die Produktivität aufrecht zu erhalten, insbesonderenach einer Software-Hochrüstung. [0003] Bislangwar jedoch der Prozeß desErzeugens von Man-Pages ziemlich arbeitsintensiv und fehleranfällig. Allgemeingesprochen wurden die Befehle und die Man-Pages als zwei getrennteProjekte behandelt, oft von unterschiedlichen Gruppen von Arbeitswissenschaftlernbesetzt. Aufgrund der mit Koordination, Kommunikation verknüpften Probleme und/oderaufgrund einfacher menschlicher Interpretationsfehler führen Änderungen,die durch eine Gruppe von Ingenieuren an Befehlen vorgenommen werden,manchmal nicht zu Aktualisierungen an den richtigen Man-Pages durchdie Ingenieure, die für dasAktualisieren der Man-Pages verantwortlich sind. [0004] Fernerbesteht der typische Ansatz zum Entwickeln von Man-Pages darin, NROFFzu verwenden, eine Sprache, die beschreibt, wie die Man-Pages aussehenwerden, wenn die Man-Page-Komponentencodiert werden. Die Man-Page-Komponente, aufgerufen durch einen „menschlichen" Befehl (z. B. UNIX),wird verarbeitet und die dem Befehl entsprechende Online-Manual-Seite angezeigt.NROFF ist jedoch eine unflexible und schwierig zu verwendenden Sprache,die mindestens 20 Jahre alt ist. Die einzige Möglichkeit, eine NROFF-Dateizu validieren, besteht darin, die Datei auszuführen und das Ergebnis auf einerAnzeige zu betrachten, um zu bestimmen, ob dieselbe gültig ist.Ohne die Fähigkeit,eine Dokumentenverifizierung durchzuführen, müssen die Ersteller von Man-Pagesauf zeitaufwendige Probeausführungender NROFF-Dateienzurückgreifen unddurch Betrachten des Ausführungsergebnisses visuellbestimmen, ob Fehler in den NROFF-Codes sind. [0005] 1 zeigt ein Flußdiagrammdes Stands der Technik, das den Prozeß zum Erstellen von Befehlenund zugeordneten Man-Pagesdarstellt. Die linke Hälftedes Flußdiagrammsstellt die beispielhaften Handlungen dar, die durch die Entwicklungsingenieure,die fürdas Erstellen und/oder Modifizieren der Befehle verantwortlich sind,vorgenommen werden, sowie die Arbeitsprodukte, die von denselben ausgegebenwerden. Die rechte Hälftedes Flußdiagrammsstellt die beispielhaften Handlungen dar, die durch Lernproduktingenieuredurchgeführtwerden, die verantwortlich sind, zu gewährleisten, daß die Man-Pagesdie durch die Entwicklungsingenieure erstellten Befehle berücksichtigen,sowie die Arbeitsprodukte, die von denselben ausgegeben werden. [0006] DasFlußdiagrammbeginnt mit der externen Spezifikation bei Block 102. Allgemeinist die externe Spezifikation ein Dokument, das die Produktmerkmaleskizziert, in der Regel ansprechend auf Marketingerfordernisse.Die externe Spezifikation wird durch Lernproduktingenieure eingesetzt,um einen Lernproduktplan zu entwickeln (104). Die Ausgabeist ein Lernproduktplan (106) einschließlich des Zeitplans, der verschiedeneMeilensteine und Lieferbares skizziert, wofür die Lernproduktingenieureverantwortlich sind. [0007] Dieexterne Spezifikation (102) wird auch von den Entwicklungsingenieureneingesetzt, um einen Code zu entwickeln (108), der dieexterne Spezifikation implementiert. Bei Block 110 entwerfendie Entwicklungsingenieure Man-Pages, die den codierten Befehlenzugeordnet sind, die gemäß der externenSpezifikation erstellt wurden. Da die Entwicklungsingenieure über einprofundes Wissen der erstellten Befehle verfügen, werden die Man-Page-Entwürfe daherin der Regel von den Entwicklungsingenieuren erstellt, zumindestam Anfang. Die Erstellung der vorläufigen Man-Pages auf dieserStufe kann durch die Entwicklungsingenieure allein oder mit der Unterstützung derLernproduktingenieure durchgeführtwerden. [0008] Somitwird ein vorläufigesMan-Page-Dokument produziert (112). Bei Block 114 überprüfen die Lernproduktingenieuredas vorläufigeMan-Page-Dokument z. B. hinsichtlich richtiger Grammatik und richtigemEnglisch und codieren in manchen Fällen die Man-Page in NROFF.Da die durch die Entwicklungsingenieure bereitgestellten Dokumentein der Regel in einem Textverarbeitungsdateiformat (z. B. Word vonMicrosoft Corporation aus Redmond, WA), ASCII oder einem anderenvom Menschen lesbaren Format sind, müssen die Lernproduktingenieuredie bereitgestellten Informationen interpretieren und versuchen,in NROFF Man-Pages zu erstellen, die das, was die Entwicklungsingenieurebeabsichtigen, berücksichtigen.Wie es in Fällen,in denen menschliche Interpretation und menschliche Kommunikationzwischen Gruppen von Menschen beteiligt sind, typisch ist, werdenFehler oft unbeabsichtigt eingeführt,was zu potentiellen logischen Unterbrechungen zwischen den Befehlenund den sich ergebenden Man-Pages führt. Hinzu kommt, daß eine Formatierung,die manchmal in einem Dateiformat (z. B. der zuvor erwähnten VerarbeitungsanwendungWord) zur Verfügungsteht, unter Umständennicht in NROFF zur Verfügungsteht. [0009] Selbstwenn es den Lernproduktingenieuren gelingt, irgendwie die Absichtder Entwicklungsingenieure mit 100%iger Genauigkeit zu interpretieren, können sichdie sich ergebenden Man-Pages dennoch erheblich bezüglich Stil,Format und Ordnung unterscheiden. Der Grund dafür ist, daß unterschiedliche Lernproduktingenieuredie Man-Pages unter Umständenauf der Basis von individuellen, subjektiven NORFF-Codierpraktikenund -Präferenzenunterschiedlich codieren. Somit können unterschiedliche Man-Pagesin dem gleichen Produkt unterschiedlich aussehen und/oder unterschiedlichorganisiert sein, was dazu führt,daß dieMan-Pages für Benutzerschwieriger zu lesen und zu verstehen sind als notwendig. [0010] BeiBlock 116 setzen die Entwicklungsingenieure die Codeentwicklungfort, um die Befehle feinabzustimmen, Programmfehler zu behebenund manchmal neue Funktionalitätenhinzuzufügen.Für jede Änderung,die an einem Befehl ausgeführtwird, hat ein Entwicklungsingenieur die Möglichkeit, den Lernproduktingenieurendie Änderungmitzuteilen, so daß dieLernproduktingenieure die Änderungauf der (den) entsprechenden Man-Page(s) berücksichtigen können. EinigeEntwicklungsingenieure teilen Lernproduktingenieuren eifrig alle Änderungenmit. Andere Entwicklungsingenieure vergessen oder machen sich schlichtnicht die Mühe,die Lernproduktingenieure überdie Änderungenin den Befehlen zu informieren, was dazu führt, daß die Man-Pages nicht mit dengeändertenBefehlen synchronisiert werden. Andere Produktingenieure entscheidensich, durch Ausübenihres Ermessens bei Block 118, vielleicht dafür, daß einige Änderungenes nicht wert sind, in den Man-Pages berücksichtigt zu werden. Zwangsläufig sindeinige dieser subjektiven Entscheidungen falsch und folglich würden einigeMan-Pages nicht mit den geändertenBefehlen synchronisiert werden. [0011] BeiBlock 114 finden die Prüfungs-/Editierzyklenfür dieMan-Pages statt. An einem bestimmten Punkt ist es notwendig, sichin Richtung Publizierung (122) zu bewegen, was zu dem endgültigen Man-Page-Arbeitsprodukt(124) führt.In manchen Fällen werden Änderungenan den Befehlen, die spätwährenddes Entwicklungszyklus auftreten, unter Umständen nicht in den Man-Pagesaktualisiert, da der Veröffentlichungsprozeß (122)schon begonnen hat. Fürdiese Befehle blieben die Man-Pages somit bis zur nächsten Freigabeder Man-Pages nicht synchronisiert. [0012] Dermanuelle und zeitaufwendige Prozeß, der beim Erzeugen von Man-Pagesinvolviert ist, kann in manchen Fällen bewirken, daß Man-Pages mitdem freigegebenen Code nicht synchronisiert sind. 2 stellt ein bekanntes Beispiel dar,wie ein Widerspruch zwischen dem freigegebenen Code und der Man-Pagefür einProdukt entstehen kann. Ein Produkt wird zu Anfang mit einem Code 202 derVersion 1.0 und einer Man-Page 204 derVersion 1.0 freigegeben. Späterwerden der Code 206 der Version 2.0 und die Man-Page 208 derVersion 2.0 freigegeben. Bis jetzt weist jede Codefreigabe eineentsprechende Man-Page-Freigabe auf. Wenn jedoch der Code 210 derVersion 3.0 freigegeben wird, gibt es keine entsprechende 3.0-Man-Page-Freigabe,die die Codeänderungenberücksichtigt,da unter Umständennicht ausreichende Ressourcen wie z. B. Zeit oder Ingenieursressourcenzur Verfügungstanden, um die Man-Pages zu überarbeiten.Statt dessen wird die Man-Page 208 der Version 2.0 mitder Codeversion 3.0 210 freigegeben. Folglich sind neue Befehle,die in Version 3.0 erstellt und/oder modifiziert wurden, den Benutzernunter Umständennicht bekannt, und/oder alte Befehle, die in Version 3.0 nicht mehrunterstütztwerden, werden unter Umständenimmer noch in den Man-Pages erör tert,was zu einer Frustration des Benutzers führt. Ein anderes potentiellesProblem besteht darin, daß Optioneneinem Befehl hinzugefügtoder von einem Befehl entfernt und nicht dokumentiert werden, oderdie Werte, die bereitgestellt sind, um eine Optionsänderungzu verwenden. [0013] Nebenden Man-Pages müssenauch ein Parsercode und ein Gebrauchstext für Befehlscodes erstellt werden.Bei Verwendung hierin repräsentiert derBegriff Parsercode ein StückCode, das den Befehl interpretiert, einschließlich der Optionen desselben,um es dem Programm zu ermöglichen,den Befehl entsprechend auszuführen.Gebrauchstext ist ein von Menschen lesbarer Text, der durch denBefehl bereitgestellt wird und erklärt, wie der Befehl verwendetwerden kann, z. B. was die einem Befehl zugeordneten Optionen undParameter sind. [0014] Wiees mit Man-Pages der Fall ist, so neigen auch die bekannten Prozessezum Erstellen und Aktualisieren eines Parsercodes und Gebrauchstextes dazu,manuell und fehleranhängigzu sein. 3 ist ein Flußdiagrammdes Stands der Technik, das den bekannten Prozeß zum Erstellen und Aktualisieren desParsercodes, Gebrauchstextes und der Man-Pages aus dem Befehlcodedarstellt. Das Flußdiagrammbeginnt mit dem Entwicklungsingenieur 300, der einen Befehlscode 302,einen Parsercode 304 und einen Gebrauchstext 306 erstellt.Nachdem der Befehlscode erstellt wurde (302), folgt dasFlußdiagrammdem Pfeil 308 zu dem Lernproduktingenieur (310),der die Man-Pages auf die oben erörterte Weise erstellt/editiert(312). [0015] Inder Regel muß andem Befehlscode ein Testen durchgeführt werden, um Leistung undGenauigkeit zu gewährleisten.Somit testet der Entwicklungsingenieur 300 bei Block 316 denBefehlscode. Wenn der Befehlscode im wesentlichen fehlerfrei und dieLeistung akzeptabel ist, ist das Testen bei Entscheidungsblock 318 abgeschlossenund der Befehlscode und die Man-Page werden bei Block 314 versandt. [0016] Wenndas Testen bei Block 316 anzeigt, daß der Befehlscode nicht zufriedenstellendist, modifiziert der Entwicklungsingenieur 300 den Befehlscode beiBlock 318. Wenn der Befehlscode modifiziert wird, kannder Parser bei Block 320 ebenfalls modifiziert werden.Der Entwicklungsingenieur 300 entscheidet, oft subjektiv,bei Block 322, ob die Änderungenan dem Befehlscode und/oder dem Parsercode eine Änderung an dem Dokument erfordern.Wenn der Entwicklungsingenieur entscheidet, daß eine Änderung an dem Dokument nötig ist,wird der Gebrauchstext bei Block 326 modifiziert. Andererseits, wenndie Einschätzungdes Entwicklungsingenieurs inkorrekt ist und die Änderungnicht in dem Gebrauchstext berücksichtigtwird, wäreder Gebrauchstext infolgedessen mit den geänderten Befehlscodes nichtsynchronisiert. [0017] Selbstwenn der Gebrauchstext geändert wurde(wie bei Block 322 entschieden und bei Block 326 durchgeführt wurde),verfügtder Entwicklungsingenieur überdas Ermessen, bei Block 324 zu entscheiden, ob die Änderungenden Lernproduktingenieuren übermitteltwerden müssen,um die Änderungenin den Man-Pages zu berücksichtigen.Auch diese Entscheidung ist oft subjektiv. Wenn die Einschätzung desEntwicklungsingenieurs inkorrekt ist oder er die Änderungendem Lernproduktingenieur nicht übermittelt,wären dieMan-Pages mit demaktualisierten Befehlscode nicht synchronisiert. [0018] Wieaus 3 ersichtlich, werdenParsercode und Gebrauchstext manuell aufgebaut und unabhängig voneinanderaufrechterhalten. Es ist daher, wie in 3 zu sehen ist, möglich, Änderungen an dem Parsercodevorzunehmen, ohne den Gebrauchstext und/oder die Man-Pages zu ändern. Fernerist es möglich, Änderungenan einem Gebrauchstext vorzunehmen, ohne den Parsercode und/oder dieMan-Pages zu ändern. [0019] InAnbetracht des Vorangegangenen sind neue Techniken zum Erstellenund Aktualisieren von Man-Pages und/oder eines Gebrauchstextes und/odereines Parsercodes erwünscht. [0020] Esist die Aufgabe der vorliegenden Erfindung, ein Verfahren, einenHerstellungsartikel und ein computerimplementiertes Verfahren zumErzeugen von Unterstützungsdokumentenmit verbesserten Charakteristika zu schaffen. [0021] DieseAufgabe wird durch ein Verfahren gemäß Anspruch 1, einen Herstellungsartikelgemäß Anspruch11 sowie ein computerimplementiertes Verfahren gemäß Anspruch18 gelöst. [0022] DieErfindung bezieht sich bei einem Ausführungsbeispiel auf ein Verfahrenzum Erzeugen von Unterstützungsdokumentenfür einenBefehlscode in einer befehlszeilenorientierten Betriebsumgebung. DasVerfahren umfaßtein Erstellen einer XML-Quellendatei (XML = extensible markup language,erweiterbare Markup-Sprache), wobei die XML-Quellendatei Informationenumfaßt,die fürein Erzeugen eines Parsercodes erforderlich sind. Der Parsercodeermöglichtein Kompilieren des Befehlscodes. Das Verfahren umfaßt fernerein Erzeugen von zumindest zweien einer Man-Page-Datei, einer Gebrauchsnachrichtendateiund des Parsercodes aus der XML-Quellendatei. [0023] Beieinem anderen Ausführungsbeispielbezieht sich die Erfindung auf einen Herstellungsartikel, der einProgrammspeicherungsmedium mit einem in demselben ausgeführten computerlesbarenCode aufweist, wobei der computerlesbare Code für ein Erzeugen von Unterstützungsdokumentenfür einen Befehlscodein einer befehlszeilenorientierten Betriebsumgebung konfiguriertist. Es ist ein computerlesbarer Code zum Zugreifen auf eine XML-Quellendateimit eingeschlossen. Die XML-Quellendatei umfaßt Informationen, die für ein Erzeugeneines Parsercodes erforderlich sind. Der Parsercode ermöglicht einKompilieren des Befehlscodes. Ferner ist ein computerlesbarer Codezum Erzeugen von zumindest zweien aus einer Man-Page-Datei, einerGebrauchsnachrichtendatei und des Parsercodes aus der XML-Quellendatei miteingeschlossen. [0024] Beinoch einem weiteren Ausführungsbeispielbezieht sich die Erfindung auf ein computerimplementiertes Verfahrenzum Erzeugen von Unterstützungsdokumentenfür einenBefehlscode in einer befehlszeilenorientierten Betriebsumgebung.Das Verfahren umfaßtein Zugreifen auf eine XML-Quellendatei, wobei die XML-QuellendateiInformationen umfaßt,die fürein Erzeugen eines Parsercodes erforderlich sind. Der Parsercodeermöglichtein Kompilieren des Befehlscodes. Das Verfahren umfaßt fernerein Erzeugen einer Man-Page-Datei, einschließlich eines Neuordnens derReihenfolge, in der die Informationen in der XML-Quellendatei bereitgestellt sind,und eines Durchführensentweder einer XSLT-(eXtensible Stylesheet Language Transformation= erweiterbare Formatsprache-Transformation)-Transformation an derXML-Quellendateioder einer NROFF-Transformierung an der XML-Quellendatei. [0025] BevorzugteAusführungsbeispieleder vorliegenden Erfindung werden nachfolgend Bezug nehmend aufdie beiliegenden Zeichnungen nähererläutert,wobei gleiche Bezugszeichen verwendet werden, um die gleichen, ähnlicheoder entsprechende Teile in den mehreren Ansichten der Zeichnungenzu beschreiben. Es zeigen: [0026] 1 ein Flußdiagrammdes Stands der Technik, das den Prozeß zum Erstellen von Befehlen undzugeordneten Man-Pages darstellt; [0027] 2 ein bekanntes Beispiel,wie ein Widerspruch zwischen dem freigegebenen Code und der Man-Pagefür einProdukt entstehen kann; [0028] 3 ein Flußdiagrammdes Stands der Technik, das den bekannten Prozeß zum Erstellen und Aktualisieren desParsercodes, Gebrauchstextes und der Man-Pages aus dem Befehlscode darstellt; [0029] 4 gemäß einem Ausführungsbeispiel dervorliegenden Erfindung ein Blockdiagramm, das die Verwendung einereinzelnen XML-Man-Page-Quellendatei, um die Unterstützungsdateienwie z. B. Man-Pages, Gebrauchsnachrichtendateien, Parsercodedateiensynchron zu erzeugen, darstellt; [0030] 5 ein beispielhaftes Diagramm,das gemäß einemAusführungsbeispielder vorliegenden Erfindung die Transformierung und Neuordnung von Informationenaus der XML-Man-Page-Quellendatei, um automatisch eine Man-Pagezu erstellen, darstellt; [0031] 6 gemäß einem Ausführungsbeispiel dervorliegenden Erfindung eine Parsertransformation eines beispielhaftenBefehls aus einer XML-Man-Page-Quellendatei; [0032] 7A gemäß einem Ausführungsbeispiel dervorliegenden Erfindung eine Ausführungszeiterzeugungdes Gebrauchstextes; und [0033] 7B gemäß einem Ausführungsbeispiel dervorliegenden Erfindung eine Kompilierungszeiterzeugung des Gebrauchstextes. [0034] Dievorliegende Erfindung wird nun unter Bezugnahme auf einige bevorzugteAusführungsbeispielederselben detailliert beschrieben, wie sie in den beiliegenden Zeichnungendargestellt sind. Bei der folgenden Beschreibung werden zahlreichespezifische Details dargelegt, um ein gründliches Verständnis dervorliegenden Erfindung zu ermöglichen. Fachleutenauf dem Gebiet ist es jedoch klar, daß die vorliegende Erfindungohne einige oder aller dieser spezifischen Details praktiziert werdenkann. In anderen Fällenwurden bekannte Prozeßschritte und/oderStrukturen nicht detailliert beschrieben, um das Verständnis dervorliegenden Erfindung nicht unnötigzu erschweren. [0035] Beieinem Ausführungsbeispielsetzt die vorliegende Erfindung eine einzelne XML-Quellendatei ein,aus der Unterstützungsdateienwie z. B. Man-Pages, Gebrauchsdatendateien, Parsercodedateien unddergleichen automatisch erzeugt werden. Da die benötigten Unterstützungsdateien(z. B. Man-Pages, Gebrauchsdatendateienund Parsercodedateien) automatisch aus einer einzelnen Quelle erzeugtwerden, werden Inkonsistenzen, die auf ein menschliches Beurteilenund Ermessen bei der Erstellung und Aktualisierung der Unterstützungsdateienzurückzuführen sind,wesentlich reduziert. Da die Unterstützungsdateien automatisch auseiner einzelnen Quellendatei erzeugt werden, werden die individuellen Unterstützungsdateienferner automatisch bezüglich dereinzelnen XML-Quellendatei synchronisiert, was im wesentlichen dieMöglichkeitausschließt,daß individuelleUnterstützungsdateiennicht miteinander synchronisiert sind. Hinzu kommt, daß die Aufgabe desAktualisierens der Unterstützungsdateien,da alle Unterstützungsdateienihre Informationen von der einzelnen XML-Quellendatei ableiten,vorzugsweise auf ein Aktualisieren der einzelnen XML-Quellendatei underneutes Erzeugen eines neuen Satzes Unterstützungsdateien herunterreduziertist. [0036] Beieinem Ausführungsbeispielbeschreibt die XML-Quellendateidie Syntax der Befehle, der Gebrauchsdaten und jeglicher andererInformationen, die normalerweise in den Man-Pages enthalten wären. Ferner,da die XML-Quellendatei die Informationen enthält, die erforderlich sind,um den Parsercode zu erzeugen, wird die XML-Quellendatei, somit erzeugt,noch bevor der Befehlscode (d. h. der Code, den die Man-Pages beschreiben)kompiliert wird. Diese Anforderung gewährleistet daher, daß die Informationenin der XML-Quellendateiimmer in Synchronisation mit dem Befehlscode sind. [0037] DieVerwendung von XML bietet noch andere Vorteile. Durch die Verwendungvon XML sind Ingenieure z. B. in der Lage, moderne Dokumentenverifizierungstechnologien,wie z. B. Dokumententypdefinition (DTD) und/oder XML-Schemata, einzusetzen,um syntaxgesteuerte Editoren zu treiben, um die Aufgabe des Erstellensder Unterstützungsdateien (über dieXML-Quellendatei) effizienter und genauer zu machen. Als Beispielseien die Man-Pages betrachtet. Im Gegensatz zu dem bekannten Ansatz, beidem Man-Pages unter Verwendung der schwierig zu handhabenden NROFF-Spracheerstellt werden müssen,ermöglichtes die Erfindung, daß Man-Pagesautomatisch aus einer XML-Quellendatei erzeugt werden. Mit XML kannnicht nur einfacher gearbeitet werden, die Verwendung von XML ermöglicht auch einrobustes Editieren und Fehlerüberprüfen während derDateneingabephase. Zum Beispiel kann der syntaxgesteuerte Editor,der mit XML arbeitet, automatisch Elemente für eine Eingabe auflisten, sodaß derErsteller einer Man-Page sich nicht an die Elemente erinnern muß. Als einweiteres Beispiel ermöglichtes die DTD-Technologiedem Ersteller der Man-Pages, Fehler zu beseitigen und/oder zu erkennen,währenddie XML-Quellendatei erstellt wird. Im Gegensatz dazu macht es derNROFF-Ansatz des Stands der Technik erforderlich, daß der Ingenieur dieNROFF-Datei ausführtund das Ergebnis auf einer Anzeige betrachtet, um die NROFF-Dateizu validieren. [0038] Desweiteren gewährleistendie Verwendung der XML-Technologieund geeignete Transformierungen auf derselben eine Konsistenz mitder Präsentationder Man-Pages. Anstatt sich auf den Ersteller der Man-Pages zu verlassen,um die Man-Page-Informationen geeignet zu ordnen, so wie dies zuvorgemacht wurde, analysiert eine Transformationsmaschine die in derXML-Quellendatei bereitgestellten Informationen und gibt die Informationenin der korrekten Reihenfolge zu den Man-Pages aus, ungeachtet derReihenfolge, in der die Informationen in der XML-Quellendatei bereitgestelltsind. [0039] DieMerkmale und Vorteile der vorliegenden Erfindung werden vielleichtunter Bezugnahme auf die folgenden Zeichnungen und Erörterungenbesser verständlich.Gemäß einemAusführungsbeispielder vorliegenden Erfindung zeigt 4 einBlockdiagramm, das die Verwendung einer einzelnen XML-Man-Page-Quellendateidarstellt, um die Unterstützungsdateienwie z. B. Man-Pages, Gebrauchsnachrichtendateien, Parsercodedateienund dergleichen synchron zu erzeugen. Wie zuvor festgestellt wurde,ist die XML-Man-Page-Quelle konform zu modernen Dokumentenverifizierungstechnologienwie z. B. Dokumententypdefinition (DTD) oder XML-Schema. Die DTDoder das XML-Schema wird bei Block 402 bereitgestellt.Block 404 zeigt einen syntaxgesteuerten Editor, der durchden Ingenieur eingesetzt werden kann, um eine XML-Man-Page-Quellendatei zu konstruieren.Wie erwähnt,ermöglichtdie Verwendung von XML die Verwendung eines syntaxgesteuerten Editors(wie z. B. EMACS, ein Open-Source- bzw. Freie-Quellen-Editor auf HP-UXTM undLINUX und XML Spy von Altova GmbH, Rudolfsplatz 13a/9, A-1010 Wien, Österreich/EU.www.altova.com, auf Windows, oder eines anderen geeigneten syntaxgesteuertenEditors), was den Genauigkeits- und Effizienzgrad, mit dem die XML-Quellendateierstellt wird, erheblich verbessert. [0040] DieXML-Man-Page-Quellendatei ist bei Block 406 gezeigt. Allgemeinwird die XML-Man-Page-Quellendatei immer dann aktualisiert, wennder Befehlscode aktualisiert wird. Dies ist gewährleistet, da, wie zuvor erwähnt, dieXML-Man-Page-Quellendateidie Informationen enthält,die erforderlich sind, um den Parser zu erzeugen, was für ein Kompilieren desQuellencodes erforderlich ist. Aus dieser einzelnen XML-Man-Page-Quellendatei 406 kanneine Mehrzahl von Unterstützungsdateienautomatisch erzeugt werden. [0041] Umeine Man-Page aus dem XML-Man-Page-Quellencode 406 zu erstellen,wird eine NROFF-Transformation durchgeführt 408, um eine NROFF-Man-Page 410 zuerstellen. Gegenwärtig wirddie NROFF-Man-Page 410 als die Eingabe zu dem man- oder Manualbefehlverwendet, um kompatibel mit existierenden Systemen zu sein. Esist jedoch denkbar, daß Man-Pagesdirekt aus der XML-Man-Page-Quellendatei 406 erzeugt werden können, ohneauf die Zwischen-NROFF-Transformierung 408 und die NROFF-Man-Page 410 zurückzugreifen.Es sei bemerkt, daß sogarmit dem NROFF-Transformationsblock 408 und dem NROFF-Man-Page-Block 410 dieErsteller von Man-Pages nicht in der NROFF-Domäne arbeiten müssen, umMan-Pages zu erstellen. Es ist möglich, dieXSLT-Transformation direkt auf der XML-Man-Page-Quellendatei 406 auszuführen, um Man-Pageszu erhalten. Der Prozeß zumErstellen von Man-Pages wird in Verbindung mit 5 hierin weiter erörtert. [0042] Umden Parsercode zu erzeugen, stellt der XML-Man-Page-Quellencode 406 derParsertransformation 412 eine Eingabe bereit. Die Parsertransformation 412 erstellteine Parserquelle 414 aus dem XML-Man-Page-Quellencode 406.Die Parserquelle 414 wird in einen Parsergenerator 416 eingegeben, dereinen Parsercode 418 erzeugt. Weitere Details der Parsertransformationenwerden mit Bezug auf 6 hierinerörtert. [0043] UmGebrauchsnachrichten zu erzeugen, wird der XML-Man-Page-Quellencode 406 alseine Eingabe in den ASCII-Transformationsblock 420 verwendet,der die Gebrauchsnachrichten 422 erzeugt, wenn derselbedurch ein Befehlsprogramm aufgerufen wird. Gebrauchsnachrichtenkönnenentweder bei der Ausführungszeitoder bei der Kompilierungszeit erzeugt werden. Weitere Details derGebrauchsnachrichtenerzeugung werden mit Bezug auf die 7A und 7B erörtert. [0044] Wieaus dem Vorangegangen ersichtlich ist, hat der XML-Man-Page-Quellencode 406 denVorteil, aus einer einzelnen Quelle für die Erzeugung unterschiedlicherTypen von Ausgaben zu arbeiten, wobei einige derselben darauf ausgelegtsind, von Menschen gelesen zu werden (wie z. B. die Gebrauchsnachrichten 422),und einige derselben darauf ausgelegt sind, nur maschinenlesbarzu sein (wie z. B. der Parsercode 418). Über dieTransformierungsprozesse werden die Unterstützungsdateien automatisch ausdieser einzelnen Quelle erzeugt, wodurch die Möglichkeit, daß die Unterstützungsdateieneventuell nicht zueinander synchronisiert sind, praktisch eliminiertwird. Die automatische Erzeugung spart außerdem manuelle Arbeit undbeseitigt menschliche Fehler als potentielles Problem in der Erzeugungder Unterstützungsdateienaus der XML-Man-Page-Quellendatei. [0045] Fernerkann der XML-Man-Page-Quellencode 406 auf andere Transformationen 432 angewendetwerden, um andere Ausgabeformate 434 zu produzieren. ZumBeispiel könnengemäß einem Ausführungsbeispielder vorliegenden Erfindung die anderen Transformationen 432 eineTransformation der Informationen in dem XML-Man-Page-Quellencodein SGML DocBook umfassen, um eine Ausgabe für eine Verwendung in Framemakerzu produzieren. Framemaker, erhältlichvon Adobe Inc. aus San Jose, CA, ist ein beliebtes Editier- undDesktop-Publishing-Softwareprodukt,das Daten in einem DocBook-Format importieren kann. Wie bekannt,ist DocBook ein Industriestandard zum Mark-up-Formatieren von Dokumenten.Informationen überDocBook sind von OASIS erhältlich – der Organizationfor the Advancement of Structured Information Standards, unter http://www.oasis-open.org.Die Framemaker-formatierten Man-Pageskönnendann in Framemaker gehandhabt und in andere gedruckte (oder PDF-)Dokumente, die zusammen mit dem Code versandt werden, integriertwerden. Ein Importieren der SGML-DocBook-Transformation der XML-Man-Page-Quellein Framemaker macht es möglich,den Inhalt der Man-Page in anderen Dokumenten zur Verfügung zuhaben, ohne daß derselbekopiert oder neu getippt werden muß. Dementsprechend ist es wahrscheinlicher,daß Änderungen,die gegen Ende des Code-Entwicklungszyklus vorgenommen werden, inanderen veröffentlichtenDokumenten berücksichtigtsind. [0046] DasXML-Format ermöglichtauch andere Operationstypen. Zum Beispiel kann unter Bezugnahmeauf einen Ergebnisprozessor 424, ein Abfrageergebnis 426,einen Abfrageprozessor 428 und eine Abfrageschnittstelle 430 eineAbfrageschnittstelle entworfen werden, die den strukturierten XML-Man-Page-Quellencode 406 ausnutzt.Zum Beispiel kann eine Abfrage ausgegeben werden, um die Anzeigealler Beispiele, die fürBefehle bereitgestellt sind, die Sicherheitsbefehle sind, anzufordern; dasAbfrageergebnis 426 würdenur den Beispielabschnitt von Man-Pages, die Sicherheitsbefehlesind, zurückgebenund nicht die gesamte Man-Page fürjeden Sicherheitsbefehl präsentieren.Das Abfragebeispiel ist nur ein Beispiel für die Flexibilität von XML undsoll nicht den Bereich möglicherAnwendungen einschränken.Als weiteres Beispiel macht es die Struktur von XML-Dateien möglich, dieAusgabedokumente, falls erwünscht,zu unterteilen. [0047] 5 ist ein beispielhaftesDiagramm, das gemäß einemAusführungsbeispielder vorliegenden Erfindung die Transformierung und Neuordnung von Informationenaus der XML-Man-Page-Quellendatei 502,um automatisch eine Man-Page 506 zu erstellen, darstellt.Ein beispielhafter Abschnitt eines XML-Man-Page-Quellencodes 502 istmit einer Mehrzahl von Quelleneinträgen, die von A bis Y gekennzeichnetsind, gezeigt. In der Praxis könnensehr viel mehr Quelleneinträgezum Beschreiben eines gegebenen Befehls vorhanden sein, als in derbeispielhaften 5 gezeigtsind. [0048] Gemäß einemAusführungsbeispielder vorliegenden Erfindung ist die Transformationsmaschine 504 eineXSLT-(Extensible Stylesheet Language Transform = erweiterbare-Formatsprache-Transformation)-Transformationdes „Zieh"-Typs im Gegensatzzu Transformationen des „Stoß"-Typs. XSLT ist eineStandardprogrammiersprache, die zum Beschreiben einer Dokumententransformierungvorgesehen ist und konform zu der W3C-World Wide Web Consortium)-Empfehlungist. Die W3C-Empfehlung selbstist unter http://www. w3.org/TR/1999/REC-xslt-19991116.html (Stand April 2003)erhältlich.Die „Zieh"-Typ-Transformation ordnetautomatisch alle Daten neu, die nicht in einer vorgeschriebenenReihenfolge sind. Die „Stoß"-Typ-Transformationandererseits nimmt die Daten und plaziert sie in der gleichen Reihenfolge,in der die Daten präsentiertwurden. Durch die Verwendung einer „Zieh"-Typ-Transformation ist das Ordnen vonElementen in der Ausgabedatei der Transformationsmaschine vorteilhafterweiseunabhängigvon dem Ordnen der Elemente in der Eingabedatei. Dementsprechendbeeinflussen Inkonsistenzen bezüglich desOrdnens der Informationen, die in der XML-Man-Page-Quellendatei vorliegen können, nichtdie Reihenfolge, in der die Informationen in der ausgegebenen Man-Page 506 präsentiertwerden. [0049] UnterBezugnahme auf 5 wirdder Quelleneintrag D <name>, Name, des XML-Man-Page-Quellencodes 502 direktzu NAME-Eintrag auf der sich ergebenden Man-Page 506 transformiert.Der Quelleneintrag E und Quelleneintrag F transformieren zu „einbefehl – tut etwas" 510. DerQuelleneintrag H <synopsis> (= Synopse) des XML-Quellencodes 502 transformiertzu SYNOPSE 512 auf der sich ergebenden Man-Page 512.Die QuelleneinträgeH bis 0 des XML-Man-Page-Quellencodes 502 transformierenzu „einbefehl[-o param]" aufder sich ergebenden Man-Page 506. Der Quelleneintrag P <description> (= Beschreibung) desXML-Man-Page-Quellencodes 502 transformiert zu BESCHREIBUNG 516 aufder sich ergebenden Man-Page 506. DerQuelleneintrag Q <summary> (= Zusammenfassung)Dieser Befehl tut, was man von ihm erwartet. /summary> transformiert zu „DieserBefehl tut, was man von ihm erwartet" 518 auf der sich ergebenden Man-Page 506. [0050] DieQuelleneinträgeS – T <authors> (= Autoren) des XML-Man-Page-Quellencodes 502 transformierenzu „AUTOREN..." 520 aufder sich ergebenden Man-Page 506. Die Quelleneinträge U – V <diagnostics> (= Diagnose) des XML-Man-Page-Quellencodes 502 transformierenzu „DIAGNOSE ..." 522 aufder sich ergebenden Man-Page 506. Die Quelleneinträge W – X <return Values> (= Werte zurückgeben)des XML-Man-Page-Quellencodes 502 transformierenzu „WERTEZURÜCKGEBEN..." 524 aufder sich ergebenden Man-Page 506. [0051] Essei darauf hingewiesen, daß dieQuelleneinträgeS – T <AUTHORS> in dem XML-Man-Page-Quellencode 502 zwarvor den Quelleneinträgen W – X <RETURN VALUES> auftreten, die „Zieh"-Typ-XLST-Transformation 504 diein den Quelleneinträgenerhaltenen Informationen jedoch einfach neu ordnet, so daß die sichergebende Man-Page 506 in einer vorgeschriebenen Reihenfolgeist, d. h. <RETURNVALUES> (= Werte zurückgeben)tritt vor <AUTHORS> (= Autoren) in derausgegebenen sich ergebenden Man-Page 506 auf. [0052] Wieaus dem Vorangegangenen ersichtlich, ermöglicht es die Erfindung, daß die Informationenin einer konsistenten Reihenfolge in der ausgegebenen sich ergebendenMan-Page präsentiertwerden, ungeachtet der Reihenfolge, in der die Informationen in derXML-Quellendatei angeordnet sind. Dementsprechend werden dem BenutzerInformationen in einer konsistenten Reihenfolge und einem konsistenten Formatpräsentiert,was die sich ergebende Man-Page erheblich benutzerfreundlicher macht. [0053] Wiezuvor festgestellt wurde, ist es möglich, wie in 5 gezeigt ist, die Transformierung auszuführen, ohneauf den Vermittler des NROFF-Formats zurückzugreifen. Eine NROFF-Transformierung kann jedochauch aus Gründender Rückwärtskompatibilität durchgeführt werden,wenn dies erwünschtist. Bei 5 kann eineTransformierungsmaschine 504 eine NROFF-Datei ausgeben,die dann aus geführt werdenkann, um die sich ergebende Man-Page 506 zu erzeugen. [0054] Wieerörtert,wird der gleiche XML-Man-Page-Code auch verwendet, um den Parsercodezu erzeugen. 6 stellteine Parsertransformation 604 eines beispielhaften Befehlsaus einer XML-Man-Page-Quellendatei cmd.1.xml 602 dar.Bei einem Ausführungsbeispielwird eine Xalan-Transformationsmaschine 604 verwendet,um eine Datei cmd symbols.java 606 und eine Datei cmd.g 608 ausder XML-Man-Page-Quellendateizu erstellen. Diese Dateien werden dann in einen Parsergeneratoreingegeben, wie z. B. ANTLR, um den erwünschten Parsercode zu erzeugen.Xalan ist eine Open-Source-XSLT-Transformationsmaschine, die von http://xml.apache.org(Stand April 2003) erhältlichist. ANTLR ist ein Public-Domain-Parsergenerator, der von www.antlr.org(Stand April 2003) erhältlichist. [0055] EineTeilauflistung der XML-Quellendatei cmd.1.xml (602) istauf der linken Seite von 6 gezeigt,unter dem Block, der cmd.1.xml (602) darstellt. Auf ähnlicheWeise ist eine Teilauflistung der Datei cmd_symbols.java (606)in dem oberen rechten Abschnitt von 6 gezeigt,unter dem Block, der cmd_symbols.java (606) darstellt.Die Datei cmd_symbols.java (606) kann man sich als die Schnittstellezwischen dem Parser und dem Rest des Codes vorstellen. 6 zeigt auch eine Teilauflistungder Datei cmd.g (608) in dem unteren rechten Abschnittvon 6, unter dem Block,der cmd.g (608) darstellt. Die Datei cmd.g (608)kann man sich als die Parsereingabecodedatei vorstellen, die ineinen Parsergenerator eingegeben wird, um den Parsercode zu erzeugen. [0056] DieAuflistung fürdie XML-Quellendatei cmd.1.xml (602) umfaßt zweiHauptabschnitte: einen Befehlsnamenabschnitt 610 und einenSynopsenabschnitt 612. Allgemein definiert der Befehlsnamenabschnitt 610 denNamen des Befehls und definiert der Synopsenabschnitt 612 unteranderem die verfügbarenOptionen und Parameter fürden Befehl des Abschnitts 610. [0057] Aufder Basis des Befehlsnamenabschnitts 610 extrahiert dieTransformationsmaschine 604 den Befehlsnamen aus der XML-Quellendatei cmd.1.xml (602).Zum Beispiel wird der Name cmd (614) aus dem Befehlsnamenabschnitt 610 derXML-Quellendateicmd.1.xml (602) extrahiert und in die Variable cmd (616)der Datei cmd_symbols.java 606 plaziert. Auf ähnlicheWeise wird der Name cmd (614) aus dem Befehlsnamenabschnitt 610 derXML-Quellendatei cmd.1.xml (602) extrahiert und in dieVariable cmd (618) der Datei cmd.g (608) plaziert.Somit kann der Name des Befehls, der in der XML-Man-Page-Quellendateienthalten ist, extrahiert werden, um die Dateien cmd_symbols.java 606 undcmd.g 608 aufzubauen. [0058] DerSynopsenabschnitt 612 umfaßt ausreichend Informationen,um die Schnittstellendatei cmd_symbols.java (606) und dieParsereingabecodedatei cmd.g (608) zu erzeugen. Die folgendenBeispiele erläuterndiese Tatsache. Unter Bezugnahme auf den Synopsenabschnitt 612 wirdder Ausdruck „synopsisflag="-"" (620)(= Synopsenflag) der XML-Quellendateicmd.1.xml (602) zu „Flag:,-'" (622) der Datei cmd.g 608 transformiert.Der Ausdruck „<option>v/option>" (624) der XML-Quellendatei cmd.1.xml(602) wird extrahiert und in dem Ausdruck „publicstatic Boolean option_v = false;" (626)(public static Boolean option_v = false = öffentliche statische BoolescheOption_v = falsch) innerhalb der Datei cmd_symbols.java 606 eingesetzt.Der gleiche Ausdruck „<option>v/option>" (624) der XML-Quellendateicmd.1.xml (602) wird ebenfalls extrahier und in dem Ausdruck „Opt_v:,v'" (628) derParsereingabecodedatei cmd.g (608) eingesetzt. [0059] InAnbetracht unterschiedlicher Optionsgruppierungstypen, transformiertbeispielsweise der Ausdruck „<group choice = „opt">" (630)(group choice = Gruppenwahl) der XML-Quellendatei cmd.1.xml (602)zu dem Ausdruck „OPT2: (OPT2_1|OPT2_2|OPT2_3)*" (632) derParsereingabecodedatei cmd.g (608). Eines der Elementeunter dem Ausdruck „<group choice = „opt">" (630),Gruppenwahl, der XML-Quellendatei cmd.1.xml (602) ist in 6 als Ausdruck „<option>T</option" (634) gezeigt. Der Wert Tdes Ausdrucks „<option>T</option" (634) wird extrahiert undin dem Ausdruck „public staticBoolean option_T = false;" (636)(public static Boolean option_T = false = öffentliche statische BoolscheOption_T = falsch) der Datei cmd_symbols.java (606) undauch in dem Ausdruck „Opt_T: ,T'" (638) der Parsereingabecodedateicmd.g (608) eingesetzt. [0060] Essei bemerkt, daß dieobigen Beispiele nur einige der Transformationen sind, die stattfinden,um die Parserschnittstellendatei (606) und die Parsereingabecodedatei(608) abzuleiten. Zwar wird in diesem Fall Xalan als Transformationsmaschineeingesetzt, doch ist die Erfindung nicht auf eine bestimmte Transformationsmaschinebeschränkt.Desgleichen ist die Erfindung, obwohl erwägt wird, daß unter Umständen derANTLR-Parsergenerator eingesetzt wird, um den Parsercode aus derParsercodeeingabedatei (608) zu erzeugen, nicht auf einenbestimmten Parsergenerator beschränkt. Angesichts dieser Offenbarungist es Fachleuten auf dem Gebiet ohne weiteres klar, daß andereTransformationsmaschinen und/oder Parsergeneratoren angepaßt werdenkönnen,um den Parsercode aus der XML-Eingabe-Quellendatei zu erzeugen. [0061] Wieerwähntkann der Gebrauchstext auch aus den Informationen erhalten werden,die in dem XML-Man-Page-Quellencode enthalten sind. Die 7A und 7B sind Diagramme, die zwei beispielhafteAnsätzezum Erzeugen eines Gebrauchstextes gemäß einem Ausführungsbeispielder vorliegenden Erfindung darstellen. 7A zeigt die Erzeugung des Gebrauchstexteswährendder Ausführungszeit und 7B zeigt eine Erzeugungdes Gebrauchstextes währendder Kompilierungszeit. [0062] UnterBezugnahme auf 7A führt einBefehlsprogramm 702 ein optionales Anzeigeprogramm 704 aus,um eine Transformationsmaschine 708 aufzurufen. Das Anzeigeprogramm 704,das optional ist, stellt eine zusätzliche Flexibilität bereit,um die Menge an Informationen, die der Anzeige des Gebrauchstextes 712 bereitgestelltwerden, zu steuern. Das Befehlsprogramm 702 beschreibtder Transformationsmaschine 708 die durchzuführende(n)Transformation(en). Die Transformationsmaschine 708 nimmtals Eingaben auch die Gebrauchstransformation 710 und dieXML-Quellencodedatei cmd.1.xml (706). Die Gebrauchstransformation 710 enthält z. B. eineBeschreibung der Gebrauchsinformationen, die aus cmd.1.xml 706 extrahiertwerden sollen. Die Gebrauchstransformation 710 kann z.B. unter Verwendung der XSLT-Technologieimplementiert sein. [0063] UnterschiedlicheElemente der XML-Quellencodedatei cmd.1.xml 706 können ansprechend aufdas Anzeigeprogramm 704 angezeigt werden. Zum Beispielkann das Anzeigeprogramm 704 programmiert sein, um dieSynopse, Beispiele füreinen Befehlsgebrauch oder den Gebrauchstext anzuzeigen. [0064] UnterBezugnahme auf 7B wirddie Erzeugung des Gebrauchstextes hauptsächlich während der Kompilierungszeitdurchgeführt.Dies kann z. B. in Fällennützlichsein, in denen die XML-Quellendatei zur Ausführungszeit nicht zur Verfügung steht.Die XML-Quellendatei cmd.1.xml 750 kann über eineTransformationsmaschine 754 transformiert werden, um ansprechendauf die XSLT-Gebrauchstransformationsdatei 756 und dieInhaltssteuerdatei 758 eine Gebrauchstext-Verfahren-Quellendatei 752 zuproduzieren. Die Inhaltssteuerdatei 758 führt eine ähnlicheFunktion wie das Anzeigeprogramm 704 aus 7A aus. [0065] EinJava- oder C-Compiler 762 kombiniert die Gebrauchstext-Verfahren-Quellendatei 752 und dieBefehlsprogrammquellendateien 760, um ein Befehlsprogramm 764 zuerstellen. Das Befehlsprogramm 764 kann dann während derAusführungszeit ausgeführt werden,um eine Anzeige des Gebrauchstextes 766 zu produzieren.Die Ausführung kannz. B. dann stattfinden, wenn eine Hilfsfunktion aufgerufen wird.Zum Beispiel kann ein Befehl, auf den eine „-h"-Option folgt, die Anzeige des Gebrauchstextes 766 aufrufen,der auf einem Bildschirm angezeigt werden soll. [0066] Wieaus dem Vorangegangenen ersichtlich ist, spricht die vorliegendeErfindung viele Punkte an, die die Entwicklung von Man-Pages undanderen Unterstützungsdateienerschwert haben. Füreine beliebige gegebene Iteration des Befehlcodes können die Unterstützungsdateiennun automatisch und aus der gleichen XML-Quellendatei erzeugt werden.Da die Unterstützungsdateienwie z. B. Man-Pages, Parsercode und Gebrauchstext alle automatischaus der XML-Quellendatei erstellt werden, ist das Problem mit einemMangel an Synchronitätzwischen diesen Unterstützungsdateienim wesentlichen beseitigt. Da die Unterstützungsdateien automatisch auseiner einzigen Quellendatei erzeugt werden können, können ferner erhebliche EinsparungenbezüglichArbeit und Zeit sowie eine wesentliche Reduzierung der Häufigkeitvon Fehlern, die von Menschen hervorgerufen werden, realisiert werden. [0067] Ferner,da die XML-Quellendatei die Informationen enthält, die notwendig sind, umden Parsercode zu erzeugen, wird die XML-Quellendatei jetzt erstellt,noch bevor der Befehlscode kompiliert werden kann. Diese Anforderunggewährleistet,daß die XML-Quellendateifür einebeliebige gegebene Iteration des Befehlscodes rechtzeitig aktualisiertwird. Dementsprechend ist das Problem im Zusammenhang mit dem Mangelan Synchronizitätzwischen den Unterstützungsdateien(die nun aus der XML-Quellendatei automatisch abgeleitet werden) unddem Programmcode ebenfalls im wesentlichen beseitigt. [0068] DieVerwendung von XML und seiner strukturierten Datenbeschreibungseinrichtungenbietet auch viele Vorteile. WährendNROFF eine begrenzte und starre Sprache ist, hat XML viele unterschiedlicheAnwendungen und ist eine weit verbreitete Technologie, was die Aufgabedes Dokumentierens in XML fürIngenieure weniger aufwendig macht. Wie erwähnt ermöglicht XML (oder ähnlicheTechnologien) dem Ingenieur, durch Einsetzen von Technologien wiez. B. DTD eine Datenüberprüfung undFehlerüberprüfung aufeine hocheffiziente und äußerst genaueWeise durchzuführen.
权利要求:
Claims (23) [1] Verfahren zum Erzeugen von Unterstützungsdokumentenfür einenBefehlscode in einer befehlszeilenorientierten Betriebsumgebung,das folgende Schritte umfaßt: Erstelleneiner XML-Quellendatei (406), wobei die XML-Quellendatei (406)Informationen umfaßt,die erforderlich sind, um einen Parsercode (418) zu erzeugen,wobei der Parsercode (418) ein Kompilieren des Befehlscodesermöglicht;und Erzeugen von zumindest zwei einer Manual-Seite-Datei (410),einer Gebrauchsnachrichtendatei (422) und des Parsercodes(418) aus der XML-Quellendatei (406). [2] Verfahren gemäß Anspruch1, bei dem das Erstellen der XML-Quellendatei (406) einVerwenden eines syntaxgesteuerten Editors (404) umfaßt. [3] Verfahren gemäß Anspruch1 oder 2, bei dem das Erstellen der XML-Quellendatei (406)ein Verwenden einer Dokumententypdefinition (402) zur Verifizierungumfaßt. [4] Verfahren gemäß einemder Ansprüche1 bis 3, bei dem das Erstellen der XML-Quellendatei (406) einVerwenden eines XML-Schemas (402) für eine Verifizierung umfaßt. [5] Verfahren gemäß einemder Ansprüche1 bis 4, bei dem die XML-Quellendatei (406) für ein Erzeugender Manual-Seite-Datei (410) verwendet wird, wobei dasErzeugen der Manual-Seite-Datei (410) ein Neuordnen derReihenfolge, in der die Informationen in der XML-Quellendatei (406) bereitgestellt sind,umfaßt. [6] Verfahren gemäß Anspruch5, bei dem das Erzeugen der Manual-Seite-Datei (410) einAusführen einerXSLT-(eXtensibleStylesheet Language Transformation)- Transformation (504) auf derXML-Quellendatei (406) umfaßt. [7] Verfahren gemäß Anspruch5, bei dem das Erzeugen der Manual-Seite-Datei (410) einAusführen einerNROFF-Transformation(408) auf der XML-Quellendatei (406) umfaßt. [8] Verfahren gemäß einemder Ansprüche1 bis 7, bei dem die XML-Quellendatei (406) für ein Erzeugendes Parsercodes (418) verwendet wird, wobei das Erzeugendes Parsercodes (418) ein Durchführen einer Parsertransformation(412) auf der XML-Quellendatei (406), um eineParserquelle (414) zu erzeugen, umfaßt, wobei das Erzeugen desParsercodes (418) ferner ein Verwenden eines Parsergenerators(416), um den Parsercode (418) aus der Parserquelle(414) zu erzeugen, umfaßt. [9] Verfahren gemäß einemder Ansprüche1 bis 8, bei dem die XML-Quellendatei (406) für ein Erzeugender Gebrauchsnachrichtendatei (422) verwendet wird, wobeidas Erzeugen der Gebrauchsnachrichtendatei (422) ein Ausführen einerASCII-Transformation (420) auf der XML-Quellendatei (406)umfaßt. [10] Verfahren gemäß einemder Ansprüche1 bis 9, bei dem die XML-Quellendatei (406) für ein Erzeugender Manual-Seite-Datei (410), der Gebrauchsnachrichtendatei(422) und des Parsercodes (418) aus der XML-Quellendatei (406)verwendet wird. [11] Herstellungsartikel, der ein Programmspeicherungsmediummit einem darin ausgeführtencomputerlesbaren Code aufweist, wobei der computerlesbare Code für ein Erzeugenvon Unterstützungsdokumentenfür einenBefehlscode in einer befehlszeilenorientierten Betriebsumgebungkonfiguriert ist, wobei der Herstellungsartikel folgende Merkmale aufweist: einencomputerlesbaren Code zum Zugreifen auf eine XML-Quellendatei (406),wobei die XML-Quellendatei (406) Informationen umfaßt, diefür dasErzeugen eines Parsercodes (418) erforderlich sind, wobeider Parsercode (418) das Kompilieren des Befehlscodes ermöglicht;und einen computerlesbaren Code zum Erzeugen von zumindestzwei einer Manual-Seite-Datei (410), einer Gebrauchsnachrichtendatei(422) und des Parsercodes (418) aus der XML-Quellendatei(406). [12] Herstellungsartikel gemäß Anspruch 11, bei dem dercomputerlesbare Code zum Erzeugen von zumindest zwei einer Manual-Seite-Datei(410), einer Gebrauchsnachrichtendatei (422) unddes Parsercodes (418) einen computerlesbaren Code zum Erzeugender Manual-Seite-Datei(410) umfaßt,wobei der computerlesbare Code zum Erzeugen der Manual-Seite-Datei(410) einen computerlesbaren Code zum Neuordnen der Reihenfolge,in der die Informationen in der XML-Quellendatei (406)bereitgestellt sind, umfaßt. [13] Herstellungsartikel gemäß Anspruch 12, bei dem dercomputerlesbare Code zum Erzeugen der Manual-Seite-Datei (410)einen computerlesbaren Code zum Ausführen einer XSLT-(eXtensibleStylesheet Language Transformation)-Transformation (504)auf der XML-Quellendatei (406) umfaßt. [14] Herstellungsartikel gemäß Anspruch 12 oder 13, beidem der computerlesbare Code zum Erzeugen der Manual-Seite-Datei (410)einen computerlesbaren Code zum Durchführen einer NROFF-Transformation(408) auf der XML-Quellendatei (406) umfaßt. [15] Herstellungsartikel gemäß einem der Ansprüche 11 bis14, bei dem der computerlesbare Code zum Erzeugen von zumindestzwei einer Manual-Seite-Datei (410), einer Gebrauchsnachrichtendatei (422)und des Parsercodes (418) einen computerlesbaren Code zumErzeugen des Parsercodes (418) umfaßt, wobei der computerlesbareCode zum Erzeugen des Parsercodes (418) einen computerlesbarenCode zum Durchführeneiner Parsertransformation (412) auf der XML-Quellendatei(406), um eine Parserquelle (414) zu erzeugen,umfaßt,wobei der computerlesbare Code zum Erzeugen des Parsercodes (418)ferner einen computerlesbaren Code zum Verwenden eines Parsergenerators(416), um den Parsercode (418) aus der Parserquelle(414) zu erzeugen, umfaßt. [16] Herstellungsartikel gemäß einem der Ansprüche 11 bis15, bei dem der computerlesbare Code zum Erzeugen von zumindestzwei einer Manual-Seite-Datei (410), einer Gebrauchsnachrichtendatei (422)und des Parsercodes (418) einen computerlesbaren Code zumErzeugen der Gebrauchsnachrichtendatei (422) umfaßt, wobeider computerlesbare Code zum Erzeugen der Gebrauchsnachrichtendatei (422)einen computerlesbaren Code zum Durchführen einer ASCII-Transformation(420) auf der XML-Quellendatei(406) umfaßt. [17] Herstellungsartikel gemäß einem der Ansprüche 11 bis16, bei dem der computerlesbare Code zum Erzeugen von zumindestzwei einer Manual-Seite-Datei (410), einer Gebrauchsnachrichtendatei (422)und des Parsercodes (418) einen computerlesbaren Code zumErzeugen der Manual-Seite-Datei (410), der Gebrauchsnachrichtendatei(422) und des Parsercodes (418) aus der XML-Quellendatei (406) umfaßt. [18] Computerimplementiertes Verfahren zum Erzeugen vonUnterstützungsdokumentenfür einen Befehlscodein einer befehlszeilenorientierten Betriebsumgebung, das folgendeSchritte umfaßt: Zugreifenauf eine XML-Quellendatei (406), wobei die XML-Quellendatei(406) Informationen umfaßt, die für das Erzeugen eines Parsercodes(418) erforderlich sind, wobei der Parsercode (418)ein Kompilieren des Befehlscodes ermöglicht; und Erzeugen einerManual-Seite-Datei (410), einschließlich eines Neuordnens derReihenfolge, in der die Informationen in der XML-Quellendatei (406)bereitgestellt sind, und eines Durchführens entweder einer XSLT-(eXtensibleStylesheet Language Transformation)-Transformation (504) an derXML-Quellendatei (406) oder einer NROFF-Transformation(408) an der XML-Quellendatei. [19] Computerimplementiertes Verfahren gemäß Anspruch18, das ferner ein Erzeugen des Parsercodes (418) aus derXML-Quellendatei (406) aufweist, wobei das Erzeugen desParsercodes (418) ein Durchführen einer Parsertransformation(412) auf der XML-Quellendatei (406), um eineParserquelle (414) zu erzeugen, umfaßt, wobei das Erzeugen des Parsercodes(418) ferner ein Verwenden eines Parsergenerators (416),um den Parsercode (418) aus der Parserquelle (414)zu erzeugen, umfaßt. [20] Computerimplementiertes Verfahren gemäß Anspruch19, das ferner ein Erzeugen einer Gebrauchsnachrichtendatei (422)aus der XML-Quellendatei (406) umfaßt, wobei das Erzeugen derGebrauchsnachrichtendatei (422) ein Durchführen einer ASCII-Transformation(420) auf der XML-Quellendatei (406) umfaßt. [21] Computerimplementiertes Verfahren gemäß einemder Ansprüche18 bis 20, bei dem das Erstellen der XML-Quellendatei ein Verwenden eines syntaxgesteuertenEditors umfaßt. [22] Computerimplementiertes Verfahren gemäß einemder Ansprüche18 bis 21, bei dem das Erstellen der XML-Quellendatei (406) ein Verwendeneiner Dokumententypdefinition (402) zur Verifizierung umfaßt. [23] Computerimplementiertes Verfahren gemäß einemder Ansprüche18 bis 22, bei dem das Erstellen der XML-Quellendatei ein Verwenden eines XML-Schemas(402) zur Verifizierung umfaßt.
类似技术:
公开号 | 公开日 | 专利标题 Heitkötter et al.2013|Cross-platform model-driven development of mobile applications with md2 US8245133B2|2012-08-14|Automatic authoring and publishing US5966535A|1999-10-12|Method and apparatus for generating program code for world wide web service applications Visser2007|WebDSL: A case study in domain-specific language engineering US7475289B2|2009-01-06|Test manager US4949253A|1990-08-14|Method and apparatus for automatically generating program US6578192B1|2003-06-10|Method and system for supporting dynamic document content expressed in a component-level language JP5204070B2|2013-06-05|ソフトウェア成果物の第2バージョンに移行する際に、当該ソフトウェア成果物の第1バージョンになされたカスタマイズをマージするためのツールを生成する方法、コンピュータ使用可能な媒体及びデータ処理システム US7114149B2|2006-09-26|Navigation links in generated documentation US6668354B1|2003-12-23|Automatic display script and style sheet generation US8387006B1|2013-02-26|System and method for authoring a web page to be run-time editable JP4344693B2|2009-10-14|ブラウザの文書編集のためのシステムおよびその方法 Esselink2000|A practical guide to localization EP1489496B1|2017-04-19|System und Verfahren zum Erzeugen, Verwalten und Verwenden von Kodesegmenten US6055369A|2000-04-25|Apparatus for visual programming with screen flow US7426717B1|2008-09-16|System and method for debugging files in a runtime environment US5946488A|1999-08-31|Method for selectively and incrementally displaying the results of preprocessing US8543379B1|2013-09-24|System and method for parsing a text buffer using a graphical user interface US7627851B2|2009-12-01|Modification method for modifying a source code US6237136B1|2001-05-22|System and method for automatically creating source code example files for an application program in a plurality of programming languages US7370318B1|2008-05-06|System and methodology for asynchronous code refactoring with symbol injection US7191395B2|2007-03-13|Method and system for stylesheet-centric editing US8078960B2|2011-12-13|Rendering an HTML electronic form by applying XSLT to XML using a solution US6651240B1|2003-11-18|Object-oriented software development support apparatus and development support method US8756490B2|2014-06-17|Editing parent and child web pages
同族专利:
公开号 | 公开日 US20040237036A1|2004-11-25| JP2004348737A|2004-12-09|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2004-12-16| OP8| Request for examination as to paragraph 44 patent law| 2006-11-09| 8130| Withdrawal|
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|